<?php

namespace Sistema\AdminBundle\Repository;

use Doctrine\ORM\EntityRepository;

class FechaRepository extends EntityRepository
{
    /**
     * Busca los equipos de un grupo de un torneo segun cualquier fecha del torneo.
     */
    public function findPartidosByFecha($idFecha) {
        $em = $this->getEntityManager();
        $consulta = $em->createQuery('SELECT p FROM SistemaAdminBundle:Partido p
                                        WHERE p.idFecha = :idFecha
             ');
//        $consulta = $em->createQuery('SELECT pde FROM SistemaAdminBundle:PartidoDeEquipo pde
//                                            JOIN pde.IdPartido partido
//                                            WHERE pde.idPartido = p.id AND EXISTS ( SELECT p FROM SistemaAdminBundle:Partido p
//                                                WHERE p.idFecha = :idFecha)'
//                );
//        $consulta = $em->createQuery('SELECT pde FROM SistemaAdminBundle:PartidoDeEquipo pde
//                                            JOIN pde.idPartido partido
//                                            WHERE partido.idFecha = :idFecha'
//                );
        $consulta->setParameter('idFecha', $idFecha);
         
        return $consulta->getResult();
    }
    
    /**
     * Busca las fechas de un torneo.
     */
    public function findFechasByTorneo($idTorneo) {
        $em = $this->getEntityManager();
        $consulta = $em->createQuery('SELECT f FROM SistemaAdminBundle:Fecha f
                                        JOIN f.idGrupo g
                                        JOIN g.idTorneo t
                                        WHERE t.id = :idTorneo
             ');
        $consulta->setParameter('idTorneo', $idTorneo);
         
        return $consulta->getResult();
    }
}